<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

/**
 * 团购信息从表.
 *
 * @ author: zuorenci
 * @ email: 904725327@qq.com
 * @ date: 2017/10/24 21:01
 */
class TuanInfo extends Model
{    
    protected $table = 'tuan_info';

    public $timestamps = false;

    protected $fillable = [
        'tuan_id', //团购id
        'area_id', //地区id
        'city_id', //城市id
        'business_id', //商圈id
        'title', //标题
        'intro', //介绍
        'closed', //数据状态 1正常 2删除
        'status', //上下架状态   1为上架,2为下架
        'type', //团购类型    1为金额,2为积分兑换,3为积分优惠
        'audit', //审核状态 0待审核，1审核成功，2拒绝审核
        'intro', //介绍
        'photo', //图片路径
        'thumb', //缩略图
        'price', //原价
        'tuan_price', //抢购价
        'settlement_price', //结算金额
        'num', //库存
        'sold_num', //已售数量
        'bg_date', //开始时间
        'end_date', //结束时间
        'create_time', //创建时间
        'create_ip', //创建ip
        'orderby', //排序
        'is_hot', //是否热门 0非热门，1热门
        'is_new', //是否新单 0非新单，1新单
        'is_chose', //是否精选 0非精选，1精选
        'lng', //经度
        'lat', //纬度
        'views', //浏览量
        'note', //审核备注
        'is_day_off', //是否节假日可用 0可用，1不可用
        'is_week', //是否周末可用 0可用，1不可用
        'is_custom', //  0可用，1不可用
        'bg_coupon_date', //劵开始时间
        'end_coupon_date', //劵结束时间
        'bg_available_date', //每天开始时间
        'end_available_date', //每天结束时间
        'top', //单人购买上线 0不限
        'below', //单次购买下线 0不限
        'admin_id', //审核人
        'time', //审核时间
        'photo_oss',
        'description',
        'integral',
        'thumb_oss',
    ];

    protected $casts = ['photo'];

    public function getPhotoAttribute($value)
    {
        return \App\Library\HandleFile::handleFilePath($value, $this->photo_oss);
    }

    //与活动表关联
    public function active()
    {
        return $this->hasOne('App\\Models\\Active', 'tuan_id', 'tuan_id');
    }

    //团购评价
    public function user_commends()
    {
        return $this->hasMany('App\\Models\\UserComment', 'tuan_id', 'tuan_id');
    }

     //关联评价标签
    public function comment_tags()
    {
        return $this->hasMany('App\\Models\\CommentTag', 'tuan_id', 'tuan_id');
    }

    //团购套餐
    public function combos()
    {
        return $this->hasMany('App\\Models\\Combo', 'tuan_id', 'tuan_id');
    }

    //关联团购表
    public function tuan()
    {
        return $this->hasOne('App\\Models\\Tuan', 'tuan_id', 'tuan_id');
    }

    //关联团购须知
    public function tuan_notices()
    {
        return $this->hasMany('App\\Models\\NoticeAttr', 'tuan_id', 'tuan_id');
    }

    //关联团购图片
    public function tuan_imgs()
    {
        return $this->hasMany('App\\Models\\TuanImg', 'tuan_id', 'tuan_id');
    }

}
